The Internet utilizes many data forwarding devices (e.g., routers and switches) to forward data messages between network nodes. Among other things, such forwarding devices include both routing software and a corresponding routing hardware platform that cooperate to forward data messages to their appropriate destinations. Undesirably, routing software within current forwarding devices generally is preconfigured for use within one specific routing hardware platform only. In particular, a forwarding device (e.g., a router) manufactured by a given vendor has routing software that is specifically configured for use with no routing hardware platform other than that of the given vendor. Accordingly, such routing software from one vendor cannot be used on another vendor's forwarding device.
In many such prior art forwarding devices, messages are forwarded between applications to permit inter-application communication. There are times, however, when the forwarding or receiving of a certain type of message can cause an application to fail (i.e., crash). Failure of an application undesirably can cause an entire forwarding device to malfunction.